package main

import (
	"fmt"
	"strings"
	"unicode"
)

func main() {

	/**
	五. 修剪字符串
	*/
	// 将字符串首尾包含在指定字符串中的任一字符去掉，并返回
	fmt.Println("将字符串首尾包含在指定字符串中的任一字符去掉，并返回:",
		strings.Trim("     i love you ! 我爱你 ！   ", " "))
	fmt.Println("将字符串首尾包含在指定字符串中的任一字符去掉，并返回:",
		strings.Trim("i love you ! 我爱你iiiii", "i"))
	fmt.Println("将字符串首尾包含在指定字符串中的任一字符去掉，并返回:",
		strings.Trim("ii love you ! 我爱你i x  iii", "i"))
	fmt.Println("将字符串首尾包含在指定字符串中的任一字符去掉，并返回:",
		strings.Trim("i love you ! 我爱你i", "ierl l"))
	// 将字符串s首尾满足函数f(r) = true 的字符去掉并返回
	f := func(c rune) bool {
		return !unicode.IsLetter(c) && !unicode.IsNumber(c)
	}
	fmt.Println("将字符串s首尾满足函数f(r) = true 的字符去掉并返回:",
		strings.TrimFunc("%￥￥……i love you ! 我爱你%…………i", f))
	// 将字符串首尾空白去掉
	fmt.Println("将字符串首尾空白去掉:",
		strings.TrimSpace("   i love you ! 我爱你  i"))

	// 还有指定左边去掉、右边去掉、前缀字符串去掉，后缀字符串去掉什么的:
	//	strings.TrimLeft()、strings.TrimRight()......

}
